<ui:composition template="/WEB-INF/templates/showcase.xhtml"
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:o="http://omnifaces.org/ui"
	xmlns:p="http://primefaces.org/ui"
>
	<ui:define name="description">
		<p>
			This configuration enum parses the <code>/WEB-INF/web.xml</code> and all <code>/META-INF/web-fragment</code> files
			found in the classpath and offers methods to obtain information from them which is not available by the standard
			Servlet API.
		</p>
		<pre class="prettyprint"><code class="lang-java">
// Get the &lt;welcome-file-list&gt; (which are essentially path-relative filenames which needs to be served when a folder is requested).
List&lt;String&gt; welcomeFiles = WebXml.INSTANCE.getWelcomeFiles();

// Get a mapping of all error page locations by exception type (a key of null represents the default error page location, if any).
Map&lt;Class&lt;Throwable&gt;, String&gt; errorPageLocations = WebXml.INSTANCE.getErrorPageLocations();

// Get the &lt;form-login-page&gt; (which is a context-relative URL to the login page of FORM based authentication).
String formLoginPage = WebXml.INSTANCE.getFormLoginPage();

// Get a mapping of all &lt;security-constraint&gt; URL patterns and associated roles.
Map&lt;String, Set&lt;String&gt;&gt; securityConstraints = WebXml.INSTANCE.getSecurityConstraints();

// Check if access to certain (context-relative) URL is allowed for the given role based on &lt;security-constraint&gt;.
boolean accessAllowed = WebXml.INSTANCE.isAccessAllowed("/admin.xhtml", "admin");
		</code></pre>
		<ui:include src="/WEB-INF/includes/utils/feature-request.xhtml" />
	</ui:define>
</ui:composition>